package cn.zyq.ykb.beans.task;

import cn.zyq.ykb.system.annotation.Excel;
import cn.zyq.ykb.system.common.BaseAuditBean;
import cn.zyq.ykb.system.common.BaseBean;
import com.fasterxml.jackson.annotation.JsonInclude;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;

import javax.persistence.*;
import javax.persistence.Column;
import javax.persistence.Entity;
import javax.persistence.Id;
import javax.persistence.Table;
import java.io.Serializable;
import java.math.BigDecimal;

/**
 * 任务-审核对象 taskAudit
 *
 * @author SystemAuth
 * @date 2023-05-22
 */
@Data
@Entity
@Table(name = "`taskAudit`")
@JsonInclude(value = JsonInclude.Include.NON_NULL)
public class TaskAudit  extends BaseAuditBean implements Serializable {
    /**
     * 主键id，用于关联
     */
    @Id
    @GeneratedValue(strategy = GenerationType.IDENTITY, generator = "JDBC")
    @Column(name = "`taskAuditID`")
    @Excel(name = "主键ID")
    @ApiModelProperty("主键id，用于关联")
    private Integer taskAuditID;
    /**
     * 任务ID
     */
    @Column(name = "`taskID`")
    @ApiModelProperty("任务ID")
    @Excel(name = "任务ID")
    private Integer taskID;
    /**
     * 发布人ID
     */
    @Column(name = "`userID`")
    @ApiModelProperty("发布人ID")
    private Integer userID;
    /**
     * 审核类型（1发布审核，2修改价格审核，3修改数量审核）
     */
    @Column(name = "`auditType`")
    @ApiModelProperty("审核类型（1发布审核，2修改价格审核，3修改数量审核）")
    @Excel(name = "审核类型",readConverterExp = "1=发布审核,2=修改价格审核,3=修改数量审核")
    private Integer auditType;
    /**
     * 修改的价格
     */
    @Column(name = "`price`")
    @ApiModelProperty("修改前价格")
    @Excel(name = "修改前价格")
    private BigDecimal price;
    /**
     * 修改的数量
     */
    @Column(name = "`number`")
    @ApiModelProperty("修改前数量")
    @Excel(name = "修改前数量")
    private Integer number;
    /**
     * 修改的数量
     */
    @Column(name = "`type`")
    @ApiModelProperty("修改数量的类型（1增加，2减少）")
    @Excel(name = "修改数量的类型",readConverterExp = "1=增加,2=减少")
    private Integer type;
    /**
     * 需补差价
     */
    @Column(name = "`priceDifference`")
    @ApiModelProperty("任务差价")
    @Excel(name = "任务差价")
    private BigDecimal priceDifference;
    /**
     * 修改的价格
     */
    @Column(name = "`uptPrice`")
    @ApiModelProperty("修改的价格")
    @Excel(name = "修改的价格")
    private BigDecimal uptPrice;
    /**
     * 修改的数量
     */
    @Column(name = "`uptNumber`")
    @ApiModelProperty("修改的数量")
    @Excel(name = "修改的数量")
    private Integer uptNumber;
    /**
     * 修改价格或数量前任务状态
     */
    @Column(name = "`state`")
    @ApiModelProperty("修改价格或数量前任务状态")
    @Excel(name = "修改价格或数量前任务状态")
    private Integer state;
}
